﻿#define _CRT_SECURE_NO_WARNINGS 1
#pragma warning(disable:6031)

#include <stdio.h>
int main()
{
    //int num, i;
    //printf("请输入一个正整数:");
    //scanf("%d", &num);
    //printf("%d=", num);

    //for (i = 2; i <= num; i++)//100
    //{
    //    //
    //    while (num != i)
    //    {
    //        if (num % i == 0)//100/2==50 50/2==25 25/3 25/4  25/5=5 5/5=1
    //        {
    //            printf("%d*", i);//2*2*5*5
    //            num = num / i;//50
    //        }
    //        else
    //        {
    //            break;
    //        }
    //    }

    //}
    //printf("%d", num);
    //return 0;
    /*int a = -1;
    int c = a && ~(a);
    printf("%d ", c);
    int d = a && -a;
    printf("%d", d);*/
   /* int a = 0x0f;
    int b = 0x0a;
    int c = a & b;
    printf("%#o", c);*/
    /*编写程序需求如下：
        提示用户输入密码 -- 整数，
        如果密码正确提示密码正确，打印正在进入系统
        如果密码错误提示密码错误，请重新输入*/
    /*int password;
    printf("请输入密码：");
    scanf("%d", &password);
    if (password == 12345)
    {
        printf("正在进入系统...");
    }
    else
    {
        printf("密码错误，请重新输入");

    }*/
  /*编写程序需求如下：
        输入员工的基本工资
        输入考核成绩（0~100）
        0~59        不及格
        60~80       良好
        81~100      优秀
        其他数据    输入有错误
        不及格 扣工资 300元；
        良好    奖励  500元；
        优秀    奖励  800元；如果100分；另外再加200元；
        查看此员工最后的工资是多少？*/
    /*int salary, score;
    printf("请输入员工的基本工资:");
    scanf("%d", &salary);
    printf("请输入员工考核成绩:");
    scanf("%d", &score);
    if (score >= 0 && score < 60)
    {
        printf("salary=%d", salary - 300);
    }
    else if (score >= 60 && score <= 80)
    {
        printf("salary=%d", salary + 500);
    }
    else if (score >= 81 && score <= 100)
    {
        if (score == 100)
        {
            printf("salary=%d", salary + 800 + 200);
        }
        else
        {
            printf("salary=%d", salary + 800);
        }
    }
    else
    {
        printf("输入有错误");
    }*/
    //输入一个正数(任意位数)，倒叙输出（如输入 12345   则 输出54321 ，123-- - 321）
    /*int num, reverse;
    printf("输入一个正数(任意位数):");
    scanf("%d", &num);
    while (num != 0)
    {
        reverse = num % 10;
        printf("%d", reverse);
        num /= 10;
    }*/
    /*求s = a + aa + aaa + aaaa + aa…a的值，其中a是一个数字。
        例如，输入一个2，在输入一个5；2 + 22 + 222 + 2222 + 22222(此时共有5个数相加)，几个数相加有键盘控制。*/
                                  //2*10+a (2*10+a)*10+a (2*10+a)*10+a)+a ((2*10+a)*10+a)+a)+a
    /*int num,a=2;
    long long next = 0 , sum = 0;
    scanf("%d", &num);
    for (int i = 1; i <= num; i++)
    {
        next = next * 10 + a;
        sum += next;
    }
    printf("%lld", sum);*/
    //写一个c程序，输出下面的结果。
    //1
    //1 2
    //1 2 3
    //1 2 3 4
    //1 2 3 4 5
    /*int num;
    scanf("%d", &num);
    for (int i = 1; i <= 5; i++)
    {
        for (int j = 1; j <= i; j++)
        {
            printf("%d ", j);
        }
        printf("\n");
    }*/
    //写一个c程序，输出下面的结果。
    //A
    //ABA
    //ABCBA
    //ABCDCBA
    //ABCDEDCBA
    char ch;
    printf("请输入一个大写字母：");
    scanf("%c",&ch);
    for (char ch1 = 'A'; ch1 <= ch; ch1++)
    {
        printf("%c", ch1);
        if (ch1 > 'A' && ch1 < 'Z')
        {
            for (char ch2 = ch1 - 1; ch2 >='A' && ch2 < ch1; ch2--)
            {
                printf("%c", ch2);
            }

        }
        printf("\n");
        if (ch1 != ch)
        {

            for (char ch3 = 'A'; ch3 <= ch1; ch3++)
            {
                printf("%c", ch3);
            }
        } 
        
}  
    //    A
    //   ABA
    //  ABCBA
    // ABCDCBA
    //ABCDEDCBA
    //int row = 5;
    //int i, j;
    //char ch;
    //for (i = 1; i <= row; i++)//保证5行
    //{
    //    //空格
    //    for (j = 1; j <= row - i; j++)
    //    {
    //        printf(" ");
    //    }
    //    //中间字符前
    //    for (ch = 'A'; ch <= 'A' + i - 1; ch++)
    //    {
    //        printf("%c", ch);
    //    }
    //    //中间字符后
    //    for (ch = 'A' + i - 1 -1; ch >= 'A'; ch--)
    //    {
    //        printf("%c", ch);
    //    }
    //    printf("\n");
    //    
    //}
        //有个16位的整数，每4位为一个数，求4个数据的和
        //int sum = 0;
        //unsigned int a = 0x1234;
        //sum += (a & 0xf000) >> 12;//取高位
        //sum += (a & 0x0f00) >> 8;
        //sum += (a & 0x00f0) >> 4;
        //sum += a & 0x000f;
        //printf("%d",sum);
    /*unsigned int a = 0b11111111111111111111111111111000;
    printf("%u",a);*/
}